<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.prime.com.tr/ui">
<h:head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>AGREGAR PROFESOR</title>
	<link type="text/css" rel="stylesheet"
			href="#{request.contextPath}/css/default.css" />
	<link type="text/css" rel="stylesheet"
			href="#{request.contextPath}/themes/#{preferencias.tema}/skin.css" />
	<link type="text/css" rel="stylesheet"
			href="#{request.contextPath}/syntaxhighlighter/styles/syntaxhighlighter.css"/>
</h:head>
<body bgcolor="black">
	<div align="center">
		<h:panelGrid columns="1">
		<h:form id="profesor" prependId="false">
			<div align="center">
			<br />
				<h1><h:outputText value="AGREGAR PROFESOR" style="color: red" /></h1>
			<br />
			</div>
			
			<p:panel id="panel" header="Nuevo profesor" style="margin-bottom:10px;">
				<p:messages /> 
				<br/>
				<div align="center">
					<h:panelGrid columns="3">
						<h:outputText value="Cedula:" style="color: black" partialSubmit="true"/>
							<h:inputText id="cedula" value="#{profesorBean.profesor.cedula}" required="true" requiredMessage = "Ingrese la cedula del profesor" rendered="#{profesorBean.accion == 'registrar'}"  >
								<f:validateLongRange minimum="1"/> 
							</h:inputText>
							<h:inputText id="cedulaLeer" value="#{profesorBean.profesor.cedula}" required="true" readonly="true" rendered="#{profesorBean.accion != 'registrar'}" >
									<f:validateLongRange minimum="1"/> 
							</h:inputText>
							<p:message for="cedula" />
							
							<h:outputText value="Nombre:" style="color: black"/> 
							<h:inputText id="nombreyApellido" value="#{profesorBean.profesor.nombreyApellido}" required="true" requiredMessage = "Ingrese el nombre completo del profesor"> 
								<f:validateLength minimum="2" maximum="50" /> 
							</h:inputText>
							<p:message for="nombreyApellido" />
							
							<h:outputText value="Contrasenia:" style="color: black"/>
							<h:inputSecret id="contrasenia" value="#{profesorBean.profesor.contrasenia}" required="true" requiredMessage = "Ingrese la contresenia del profesor" >
							</h:inputSecret>
							<p:message for="contrasenia" />
							
							<h:outputText value="Edad:" style="color: black"/>
							<h:inputText id="edad" value="#{profesorBean.profesor.edad}" required="true"  requiredMessage = "Ingrese la edad del profesor ( entre 15 y 80 )">
								<f:validateDoubleRange minimum="15" maximum="80" />
							</h:inputText>
							<p:message for="edad" />
							
							<h:outputText value="Telefono:" style="color: black"/>
							<h:inputText id="telefono" value="#{profesorBean.profesor.telefono}" required="true" requiredMessage = "Ingrese el telefono del profesor" >
							</h:inputText>
							<p:message for="telefono" />
							
							<h:outputText value="Correo:" style="color: black"/>
							<h:inputText id="correo" value="#{profesorBean.profesor.correo}" required="true" requiredMessage = "Ingrese el correo del profesor">
							</h:inputText>
							<p:message for="correo" />
							
					</h:panelGrid>
					<h:panelGrid columns="2">
						<h:outputText value="Tipo Profesor:" style="color: black"/>
						<h:selectOneMenu value="#{profesorBean.profesor.tipo}">
							<f:selectItem itemValue="De planta" />
							<f:selectItem itemValue="Ocacional" />
							<f:selectItem itemValue="Catedratico" />
						</h:selectOneMenu>
							
						<h:outputText value="Genero:" style="color: black"/>
						<h:selectOneMenu value="#{profesorBean.profesor.genero}">
							<f:selectItem itemValue="Masculino" />
							<f:selectItem itemValue="Femenino" />
						</h:selectOneMenu>

						<h:outputText value="Programas:" style="color: black" />
						<h:selectOneMenu value="#{profesorBean.programa}">
							<f:selectItems value="#{programaBean.nombreProgramas}" />
						</h:selectOneMenu>
					</h:panelGrid>
					<br />
					<p:commandButton value="Aceptar" update="profesor fdatos" 
					actionListener="#{profesorBean.adicionarProfesor}" style="margin-right:20px;" rendered="#{profesorBean.accion == 'registrar'}"/>
					<p:commandButton value="actualizar" update="profesor fdatos" 
					actionListener="#{profesorBean.actualizarProfesorDeBD}" style="margin-right:20px;" rendered="#{profesorBean.accion != 'registrar'}"/>
					<p:commandButton value="Cancelar" update="profesor fdatos" 
					actionListener="#{profesorBean.cancelar}" style="margin-right:20px;" rendered="#{profesorBean.accion != 'registrar'}"/>
				</div>
			</p:panel>
		</h:form>
		</h:panelGrid>
	</div>

	<div align="center">
		<br />
		<h1>
		<h:outputText value="PROFESORES EXISTENTES EN LA BASE DE DATOS" style="color: red" />
		</h1>
		<br />
	</div>
	<div align="center">
		<h:panelGrid columns="1">
			<h:form id="fdatos" prependId="false">
				<p:dataTable id="tabla" value="#{profesorBean.profesores}" var="profesor" paginator="true" rows="5" emptyMessage="No hay profesor registrados">
					<p:column filterBy="#{profesor.nombreyApellido}" filterMatchMode="startsWith" footerTex="comienza por">
						<f:facet name="header">
							<h:outputText value="Nombre" />
						</f:facet>
						<h:outputText value="#{profesor.nombreyApellido}" />
					</p:column>
					<p:column filterBy="#{profesor.cedula}" filterMatchMode="startsWith" footerTex="comienza por">
						<f:facet name="header">
							<h:outputText value="Cedula" />
						</f:facet>
						<h:outputText value="#{profesor.cedula}"/>
					</p:column>
					<p:column filterBy="#{profesor.edad}" filterMatchMode="startsWith" footerTex="comienza por">
					   <f:facet name="header">
							<h:outputText value="Edad" />
						</f:facet>
						<h:outputText value="#{profesor.edad}"/>
					</p:column>
					<p:column filterBy="#{profesor.genero}" filterMatchMode="startsWith" footerTex="comienza por">
					<f:facet name="header">
							<h:outputText value="Genero" />
						</f:facet>
						<h:outputText value="#{profesor.genero}"/>
					</p:column>
					<p:column filterBy="#{profesor.correo}" filterMatchMode="startsWith" footerTex="comienza por">
					<f:facet name="header">
							<h:outputText value="Correo" />
						</f:facet>
						<h:outputText value="#{profesor.correo}"/>
					</p:column>
					<p:column filterBy="#{profesor.tipo}" filterMatchMode="startsWith" footerTex="comienza por">
					<f:facet name="header">
							<h:outputText value="Tipo" />
						</f:facet>
						<h:outputText value="#{profesor.tipo}"/>
					</p:column>
					<p:column filterBy="#{profesor.programa.nombre}" filterMatchMode="startsWith" footerTex="comienza por">
					<f:facet name="header">
							<h:outputText value="Programa" />
						</f:facet>
						<h:outputText value="#{profesor.programa.nombre}"/>
					</p:column>
					<p:column>
						<f:facet name="header">
							<h:outputText value="Eliminar" />
						</f:facet>
						<p:commandButton update="display"
							oncomplete="dialogoEliminar.show()" image="ui-icon ui-icon-trash">
							<f:setPropertyActionListener value="#{profesor}"
								target="#{profesorBean.profesor}" />
						</p:commandButton>
					</p:column>
					<p:column>
							<f:facet name="header"><h:outputText value="Actualizar" /></f:facet> 
							<p:commandButton update="profesor " image="ui-icon ui-icon-refresh">
								<f:setPropertyActionListener value="actualizar"	target="#{profesorBean.accion}" />
								<f:setPropertyActionListener value="#{profesor}" target="#{profesorBean.profesor}" />
							</p:commandButton>
					</p:column>
				</p:dataTable>
				
				<div align="center">
					<p:panel id="panelExportacion" header="Exportacion" style="margin-bottom:10px;">
						<div align="center">
							<h:panelGrid columns="5">
								<h:outputText value="Exportar datos de la tabla:" style="color: black" />
								<h:commandLink>
									<p:graphicImage value="/images/pdf.png" />
									<p:dataExporter type="pdf" target="tabla" fileName="profesores" />
								</h:commandLink>
								<h:commandLink>
									<p:graphicImage value="/images/excel.png" />
									<p:dataExporter type="xls" target="tabla" fileName="profesores" />
								</h:commandLink>
								 <h:commandLink>  
						            <p:graphicImage value="/images/csv.png" />  
						            <p:dataExporter type="csv" target="tabla" fileName="profesores" />  
						        </h:commandLink>  
						        <h:commandLink>  
						            <p:graphicImage value="/images/xml.png" />  
						            <p:dataExporter type="xml" target="tabla" fileName="profesores" />  
						        </h:commandLink> 
							</h:panelGrid>
						</div>
					</p:panel>
				</div>
				
			<p:dialog header="Profesor" widgetVar="dialogoEliminar"
				resizable="false" width="300" showEffect="explode"
				hideEffect="explode" modal="true">

				<h:panelGrid id="display" columns="2" cellpadding="4">
					<h:outputText value="Nombre:" />
					<h:outputText value="#{profesorBean.profesor.nombreyApellido}" />
					<h:outputText value="Cedula:" />
					<h:outputText value="#{profesorBean.profesor.cedula}" />
					<h:outputText value="Edad:" />
					<h:outputText value="#{profesorBean.profesor.edad}" />
					<h:outputText value="Genero:" />
					<h:outputText value="#{profesorBean.profesor.genero}" />
					<h:outputText value="Telefono:" />
					<h:outputText value="#{profesorBean.profesor.telefono}" />
					<h:outputText value="Correo:" />
					<h:outputText value="#{profesorBean.profesor.correo}" />
					<h:outputText value="Tipo de profesor:" />
					<h:outputText value="#{profesorBean.profesor.tipo}" />
					<h:outputText value="Programa al que pertenece:" />
					<h:outputText value="#{profesorBean.profesor.programa.nombre}" />
					<p:commandButton update="fdatos profesor"
						actionListener="#{profesorBean.eliminarProfesorDeBD}"
						oncomplete="dialogoEliminar.hide()" value="Eliminar">
						<f:setPropertyActionListener value="#{profesor}"
							target="#{profesorBean.profesor}" />
					</p:commandButton>
					<p:commandButton oncomplete="dialogoEliminar.hide()"
						value="Cancelar">
					</p:commandButton>

				</h:panelGrid>
			</p:dialog>
			</h:form>
		</h:panelGrid>
	</div>
	<h:form>
		<br/><br/>
			<div align="center">
				<h:commandButton value="Volver a menu principal" action="/Paginas/paginasIniciales/paginaInicioAdministrativo.xhtml" style="margin-right:40px;" />
			</div>
		<br/><br/>
	</h:form>
</body>
</html>